#ifndef CAMP_H
#define CAMP_H

#include "Territoire.hpp"
#include "Etat.h"

/*
typedef enum
{
    Spectateur,
   Attente,
   Combat,
   Deploiement,
   Move
} Etat;
*/

class Camp
{
    public:
        Camp();
        Camp(std::string n);
        void setIndice(int indice);
        int getIndice() const;
        void setNbTerr(int nbTerr);
        int getNbTerr() const;

        void setEtat(Etat e);
		Etat getEtat() const;
		//void setCouleur(Couleur c);
		//Couleur getCouleur() const;
        int nbDesADeploi(int nbterrcarte,Territoire** terri) const;
		int nbTerritoire() const;
		int nbMaxTerritoireAdjacent(int nbterrcarte,Territoire** terri) const;
		bool enVie() const;
		bool appartient(Territoire * t) const;
		void changerEtat();
		void ajouterTerritoire(Territoire* T);
		void retirerTerritoire(Territoire* T);
std::vector<Territoire*> getTerritoires();

        /*
        void setColor(const sf::Color& couleur);
        const sf::Color& getColor() const;
        */
        virtual ~Camp();

        std::vector<Territoire*> territoires;

	static sf::Color* Couleurs;

    protected:
    private:
        int indice;
        int nbTerr;
        Etat etat;
        //Couleur couleur;
};

#endif // CAMP_H
